package svc

import (
	"gb28181/internal/config"
	"gb28181/internal/manager"
	"gb28181/internal/messaging"
)

type ServiceContext struct {
	Config        config.Config
	ClientMgr     *manager.ClientManager
	MessageSender *messaging.MessageSender
}

func NewServiceContext(c config.Config, clientMgr *manager.ClientManager) *ServiceContext {
	messageSender := messaging.NewMessageSender(clientMgr)
	
	return &ServiceContext{
		Config:        c,
		ClientMgr:     clientMgr,
		MessageSender: messageSender,
	}
}
